import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.JPanel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Vector;

public class FenetreSup  extends JFrame implements ActionListener{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	Graphe g;
	JButton a1;
	ArrayList <Sommet> l;
	@SuppressWarnings("rawtypes")
	JList list;
@SuppressWarnings("rawtypes")
public FenetreSup(Graphe g,ArrayList <Sommet> l) {
		super();
 this.g=g;
 this.l=l;
 list = new JList();
		build();//On initialise notre fenêtre
	}
 
	private void build(){
		setTitle("Opération sur le graphe"); //On donne un titre à l'application
		setSize(650,240); //On donne une taille à notre fenêtre
		setLocationRelativeTo(null); //On centre la fenêtre sur l'écran
		setResizable(true); //On permet le redimensionnement
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //On dit à l'application de se fermer lors du clic sur la croix
		setContentPane(buildContentPane());
	}
	
	@SuppressWarnings({ "unchecked", "rawtypes" })
	private JPanel buildContentPane(){
	
		JPanel panel = new JPanel();
		panel.setLayout(new FlowLayout());
		//JLabel label = new JLabel(s);
		//panel.add(label);
        JScrollPane listeAvecAscenseur;
        Vector<String> listeItems = new Vector<String>();
         Iterator <Sommet> it=l.iterator();
         while(it.hasNext()){
        	 Sommet s=it.next();
        	 listeItems.addElement(s.getNom());
         }
         list = new JList(listeItems);
         list.setSelectedIndex(0);
        

         listeAvecAscenseur = new JScrollPane(list);
        listeAvecAscenseur.setPreferredSize(new Dimension(80, 70));

         setLayout(new FlowLayout());
         add(listeAvecAscenseur);

         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         pack();
         setLocationRelativeTo(null);
         setSize(400,200);
         panel.add(list);
         a1=new JButton("Supprimer");
 		a1.addActionListener((ActionListener) this);
         panel.add(a1);
        this.setVisible(true);
        
        return panel;

	}

	@SuppressWarnings("unused")
	@Override
	public void actionPerformed(ActionEvent e) {
		 Object source = e.getSource();
		if(source == a1){
			g.supprimerSom((String) list.getSelectedValue());
			this.setVisible(false);
			Menu.panel.setVisible(true);
			Menu.fenetre.setVisible(true);
			
			
		
			
		}
	}

 

}


